package com.iwomy.secureplat.platform.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.iwomy.secureplat.common.core.util.R;
import com.iwomy.secureplat.common.data.datascope.DataScope;
import com.iwomy.secureplat.platform.dto.AlarmFaultLoggingDTO;
import com.iwomy.secureplat.platform.entity.AlarmFaultLoggingEntity;
import com.iwomy.secureplat.platform.entity.AlarmLoggingEntity;
import com.iwomy.secureplat.platform.vo.AlarmFaultLoggingVO;

import java.util.List;

public interface AlarmFaultLoggingService extends IService<AlarmFaultLoggingEntity> {


	Page getAlarmFaultLoggingPage(Page page, AlarmFaultLoggingDTO alarmFaultLoggingDTO);

	/**
	 * 根据imei查未处理故障数量
	 *
	 * @param imei
	 * @return
	 */
	long selectCountByImei(String imei);

	AlarmFaultLoggingEntity oneByImeiDesc(String imei);

    List<AlarmFaultLoggingEntity> listByScope(LambdaQueryWrapper<AlarmFaultLoggingEntity> wrapper, DataScope dataScope);

	R threeDaysFaultCount();

	long countByScope(LambdaQueryWrapper<AlarmFaultLoggingEntity> wrapper,DataScope dataScope);

}